package it.unipg.bipod.dataModel;

/**
 * Utente mappa un'entita' "utente" di BiPoD.<br>
 * Le sue proprieta' rispecchiano 1-1 i campi dell'entia' corrispondente.
 * 
 * @author Lorenzo Porzi
 * 
 */
public abstract class Utente {
	private String nomeUtente;
	private String email;
	private String nome;
	private String cognome;
	private String password;
	
	/**
	 * Costruisce un nuovo utente "vuoto".
	 */
	public Utente() {
		this("", "", "", "", "");
	}
	
	/**
	 * Costruisce un utente con le proprieta' specificate.
	 * 
	 * @param nomeUtente
	 * @param email
	 * @param nome
	 * @param cognome
	 * @param password
	 */
	public Utente(String nomeUtente, String email, String nome, String cognome,
			String password) {
		setNomeUtente(nomeUtente);
		setEmail(email);
		setNome(nome);
		setCognome(cognome);
		setPassword(password);
	}
	
	/* -----------------
	 * Setters e Getters
	 * ----------------- */

	public void setNomeUtente(String nomeUtente) {
		this.nomeUtente = nomeUtente;
	}

	public String getNomeUtente() {
		return nomeUtente;
	}

	public void setEmail(String email) {
		this.email = email;
	}

	public String getEmail() {
		return email;
	}

	public void setNome(String nome) {
		this.nome = nome;
	}

	public String getNome() {
		return nome;
	}

	public void setCognome(String cognome) {
		this.cognome = cognome;
	}

	public String getCognome() {
		return cognome;
	}

	public void setPassword(String password) {
		this.password = password;
	}

	public String getPassword() {
		return password;
	}
	
	/* ------------
	 * Altri metodi
	 * ------------ */

	@Override
	public String toString() {
		return "Utente [nomeutente=" + nomeUtente + ", nome=" + nome
				+ ", cognome=" + cognome + ", email=" + email + ", password="
				+ password + "]";
	}
	
}
